// /**
//  * 日志系统使用示例
//  * 
//  * @author AI Assistant
//  * @date 2025-11-27
//  */

// import { logger, log, createCategoryLogger, LogCategory, LogLevel } from './Logger';

// // ============================================================================
// // 示例 1: 基础使用
// // ============================================================================

// export function basicUsageExample() {
//     // 使用全局 logger，指定分类
//     logger.debug(LogCategory.ECS, '实体已创建', { entityId: 123 });
//     logger.info(LogCategory.GAME, '游戏开始');
//     logger.warn(LogCategory.RESOURCE, '资源加载缓慢', { url: 'assets/image.png' });
//     logger.error(LogCategory.NETWORK, '网络请求失败', { error: 'Timeout' });
    
//     // 使用便捷方法（自动使用 GENERAL 分类）
//     log.debug('这是调试信息');
//     log.info('这是常规信息');
//     log.warn('这是警告信息');
//     log.error('这是错误信息');
// }

// // ============================================================================
// // 示例 2: 创建分类日志器
// // ============================================================================

// // 为 ECS 系统创建专用日志器
// const ecsLogger = createCategoryLogger(LogCategory.ECS);

// export function ecsSystemExample() {
//     ecsLogger.info('ECS 系统初始化');
//     ecsLogger.debug('注册系统', { systemName: 'MovementSystem' });
//     ecsLogger.warn('实体数量过多', { count: 10000 });
// }

// // 为 MVVM 系统创建专用日志器
// const mvvmLogger = createCategoryLogger(LogCategory.MVVM);

// export function mvvmSystemExample() {
//     mvvmLogger.info('ViewModel 创建', { viewName: 'GameView' });
//     mvvmLogger.debug('数据绑定更新');
// }

// // 为资源系统创建专用日志器
// const resourceLogger = createCategoryLogger(LogCategory.RESOURCE);

// export function resourceSystemExample() {
//     resourceLogger.info('开始加载资源包', { bundleName: 'game' });
//     resourceLogger.debug('资源加载进度', { progress: 0.5 });
//     resourceLogger.info('资源加载完成', { bundleName: 'game', totalAssets: 100 });
// }

// // ============================================================================
// // 示例 3: 配置日志系统
// // ============================================================================

// export function configurationExample() {
//     // 设置全局日志级别
//     logger.setLevel(LogLevel.INFO); // 只显示 INFO 及以上级别
    
//     // 为特定分类设置日志级别
//     logger.setCategoryLevel(LogCategory.ECS, LogLevel.DEBUG); // ECS 显示 DEBUG
//     logger.setCategoryLevel(LogCategory.RESOURCE, LogLevel.WARN); // 资源只显示警告和错误
    
//     // 设置分类过滤（只显示这些分类）
//     logger.setCategoryFilter([LogCategory.ECS, LogCategory.GAME]);
    
//     // 清空过滤（显示所有分类）
//     logger.setCategoryFilter([]);
    
//     // 自定义配置
//     logger.configure({
//         level: LogLevel.DEBUG,
//         showTimestamp: true,
//         showStackTrace: true,
//         enableColor: true,
//         enablePerformanceStats: true,
//     });
// }

// // ============================================================================
// // 示例 4: 性能统计
// // ============================================================================

// export function performanceStatsExample() {
//     // 启用性能统计
//     logger.configure({ enablePerformanceStats: true });
    
//     // 记录一些日志
//     for (let i = 0; i < 100; i++) {
//         logger.debug(LogCategory.ECS, `实体 ${i} 更新`);
//     }
    
//     // 获取统计信息
//     const stats = logger.getStats();
//     console.log('统计:', stats);
    
//     // 打印统计信息
//     logger.printStats();
    
//     // 重置统计
//     logger.resetStats();
// }

// // ============================================================================
// // 示例 5: 日志历史查询
// // ============================================================================

// export function historyQueryExample() {
//     // 获取所有日志历史
//     const allLogs = logger.getHistory();
//     console.log('所有日志:', allLogs);
    
//     // 获取错误级别的日志
//     const errorLogs = logger.getHistory({ level: LogLevel.ERROR });
//     console.log('错误日志:', errorLogs);
    
//     // 获取 ECS 分类的日志
//     const ecsLogs = logger.getHistory({ category: LogCategory.ECS });
//     console.log('ECS 日志:', ecsLogs);
    
//     // 获取最近 10 条日志
//     const recentLogs = logger.getHistory({ limit: 10 });
//     console.log('最近 10 条:', recentLogs);
    
//     // 清空历史
//     logger.clearHistory();
// }

// // ============================================================================
// // 示例 6: 在 Cocos Creator 组件中使用
// // ============================================================================

// import { _decorator, Component } from 'cc';
// const { ccclass } = _decorator;

// @ccclass('GameController')
// export class GameController extends Component {
//     // 创建专用日志器
//     private logger = createCategoryLogger(LogCategory.GAME);
    
//     onLoad() {
//         this.logger.info('游戏控制器初始化');
//     }
    
//     start() {
//         this.logger.info('游戏开始');
//         this.logger.debug('初始化游戏数据', { level: 1, score: 0 });
//     }
    
//     update(dt: number) {
//         // 性能敏感的地方可以先检查日志级别
//         if (logger.getStats().totalLogs < 1000) {
//             this.logger.debug(`帧更新: ${dt}`);
//         }
//     }
    
//     onDestroy() {
//         this.logger.info('游戏控制器销毁');
//     }
// }

// // ============================================================================
// // 示例 7: 错误追踪
// // ============================================================================

// export function errorTrackingExample() {
//     try {
//         // 某些可能出错的代码
//         throw new Error('模拟错误');
//     } catch (error) {
//         logger.error(LogCategory.GAME, '捕获到错误', {
//             error: error.message,
//             stack: error.stack,
//         });
//     }
// }

